package com.example.order.parser;

import com.alibaba.csp.sentinel.adapter.spring.webmvc.callback.RequestOriginParser;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletRequest;

/**
 * @Author 刘武贵
 * @Date 2024-03-04 21:34
 * @Description 功能描述：Sentinel授权规则，用来处理请求的来源
 */
@Component
public class MyRequestOriginParser implements RequestOriginParser {
    /**
     * 从HTTP请求解析原始服务器名称。
     *
     * @param httpServletRequest HTTP请求对象，用于获取请求参数。
     * @return 返回服务器名称参数的值。如果请求中没有该参数，则返回null。
     */
    @Override
    public String parseOrigin(HttpServletRequest httpServletRequest) {
        // 从请求中获取名为"serverName"的参数值
        return httpServletRequest.getParameter("serverName");
    }
}

